import numpy as np
from collections import deque  # 队列,可在两端增删元素
# 将特征数据从df类型转为numpy类型
features = np.array(features)
# 定义时间序列窗口是连续10天的特征数据
max_series_days = 10
# 创建一个队列,队列的最大长度固定为10
deq = deque(maxlen=max_series_days) # 长度超出了10,先从队列头部开始删除
# 创建一个列表,保存处理后的特征序列
x = []
# 遍历每一行数据,包含12项特征
for feature in features:
    # 将每一行数据存入队列中, numpy类型转为list类型
    deq.append(list(feature))
    # 如果队列长度等于指定的序列长度,就保存这个序列
    # 如果队列长度大于序列长度,队列会自动删除头端元素,在尾端追加新元素
    if len(deq) == max_series_days:
        # 保存每一组时间序列, 队列类型转为list类型
        x.append(list(deq))
# x:{list:334}  为一个列表,334个样本,特征数据供训练使用
# 将list类型转为numpy类型
x, y = np.array(x).astype(np.float32), np.array(y).astype(np.float32)
# x:(334,10,12)  y:(334,1)  
